Hash , Don ’ t Cache ( the Page Table ) Idan Yaniv

نویسندگان

  • Idan Yaniv
  • Dan Tsafrir
چکیده

Radix page tables as implemented in the x86-64 architecture incur a penalty of four memory references for address translation upon each TLB miss. These 4 references become 24 in virtualized setups, accounting for 5%–90% of the runtime and thus motivating chip vendors to incorporate page walk caches (PWCs). Counterintuitively, an ISCA 2010 paper found that radix page tables with PWCs are superior to hashed page tables, yielding up to 5x fewer DRAM accesses per page walk. We challenge this finding and show that it is the result of comparing against a suboptimal hashed implementation—that of the Itanium architecture. We show that, when carefully optimized, hashed page tables in fact outperform existing PWC-aided x86-64 hardware, shortening benchmark runtimes by 1%–27% and 6%–32% in bare-metal and virtualized setups, without resorting to PWCs. We further show that hashed page tables are inherently more scalable than radix designs and are better suited to accommodate the ever increasing memory size; their downside is that they make it more challenging to support such features as superpages. “In all affairs it’s a healthy thing now and then to hang a question mark on the things you have long taken for granted.” (B. Russell) “The backbone of the scientific method involves independent validation of existing work. Validation is not a sign of mistrust—it is simply how science is done.” (D. Feitelson)

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Examining Linux 2.6 Page-Cache Performance

Given the current trends towards ubiquitous 64-bit server/desktop computing with large amounts of cheap system memory, the performance and structure of the Linux R © page-cache will undoubtedly become more important in the future. An empirical and analytical examination of performance will be valuable in guiding future development. The current 2.6 radix-tree based design represents a huge leap ...

متن کامل

Performance Comparison of Content-oriented Networking Alternatives: A Hierarchical Tree versus A Flat Distributed Hash Table

The internet was designed with host-oriented networking applications such as file transfer and remote login. However, recent internet statistics show that content-oriented traffic (e.g. web pages, multimedia clips) becomes more and more dominant. Even though content-oriented networking has received increasing attention, there have been few comprehensive and quantitative studies on how to realiz...

متن کامل

Adapting Hash Joins For Modern Processors

Hash join algorithms are crucial to the performance of modern database systems. Conventional hash joins exhibit poor memory system performance on modern processors because their key data structure, the bucket-chain hash table, is ill-suited for the performance characteristics of out-of-order processors with large cache hierarchies. Whereas prior research has considered a variety of optimization...

متن کامل

A Cache - Partitioned Hash Table with LRU

In this thesis we introduce CPHASH a scalable fixed size hash table that supports eviction using an LRU list, and CPSERVER a scalable in memory key/value cache server that uses CPHASH to implement its hash table. CPHASH uses computation migration to avoid transferring data between cores. Experiments on a 48 core machine show that CPHASH has 2 to 3 times higher throughput than a hash table imple...

متن کامل

Cracking Intel Sandy Bridge's Cache Hash Function

On Intel Sandy Bridge processor, last level cache (LLC) is divided into cache slices and all physical addresses are distributed across the cache slices using an hash function. With this undocumented hash function existing, it is impossible to implement cache partition based on page coloring. This article cracks the hash functions on two types of Intel Sandy processors by converting the problem ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2016